Expand the insert/delete text
authorMatthias Clasen <mclasen@redhat.com>
Sat, 25 Jun 2011 00:42:16 +0000 (20:42 -0400)
committerMatthias Clasen <mclasen@redhat.com>
Tue, 5 Jul 2011 20:08:07 +0000 (16:08 -0400)
GtkLabel passes this now.

tests/a11y/text.c

index bda5537663f2e55e7298cccd2c20d468e95d3533..32185536cebddd0d7b839fec5d185053b0747dd9 100644 (file)
@@ -63,6 +63,7 @@ test_text_changed (GtkWidget *widget)
 {
   AtkText *atk_text;
   const gchar *text = "Text goes here";
+  const gchar *text2 = "Text again";
   SignalData delete_data;
   SignalData insert_data;
 
@@ -78,13 +79,29 @@ test_text_changed (GtkWidget *widget)
 
   set_text (widget, text);
 
-  g_assert_cmpint (delete_data.count, >, 0);
+  g_assert_cmpint (delete_data.count, ==, 0);
+
+  g_assert_cmpint (insert_data.count, ==, 1);
+  g_assert_cmpint (insert_data.position, ==, 0);
+  g_assert_cmpint (insert_data.length, ==, g_utf8_strlen (text, -1));
+
+  set_text (widget, text2);
+
+  g_assert_cmpint (delete_data.count, ==, 1);
   g_assert_cmpint (delete_data.position, ==, 0);
-  g_assert_cmpint (delete_data.length, ==, -1);
+  g_assert_cmpint (delete_data.length, ==, g_utf8_strlen (text, -1));
 
-  g_assert_cmpint (insert_data.count, >, 0);
+  g_assert_cmpint (insert_data.count, ==, 2);
   g_assert_cmpint (insert_data.position, ==, 0);
-  g_assert_cmpint (insert_data.length, ==, -1);
+  g_assert_cmpint (insert_data.length, ==, g_utf8_strlen (text2, -1));
+
+  set_text (widget, "");
+
+  g_assert_cmpint (delete_data.count, ==, 2);
+  g_assert_cmpint (delete_data.position, ==, 0);
+  g_assert_cmpint (delete_data.length, ==, g_utf8_strlen (text2, -1));
+
+  g_assert_cmpint (insert_data.count, ==, 2);
 
   g_signal_handlers_disconnect_by_func (atk_text, G_CALLBACK (text_deleted), &delete_data);
   g_signal_handlers_disconnect_by_func (atk_text, G_CALLBACK (text_inserted), &insert_data);